package com.vhall.component.entity.export.vo;

import com.vhall.component.framework.common.annotation.ParamName;
import lombok.Data;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @author yuanzh
 * @date 2021/11/22
 */
@Data
public class ExportAdmCreateReqVO implements Serializable {

    private static final long serialVersionUID = 8133623039494717796L;

    /**
     * 业务类型，0=全量导出列表数据（统计台） 1=房间列表导出 2=文档列表导出 3=问卷列表导出 4=用户列表导出 5=主持人列表导出 6=管理员列表导出 7=短视频列表 8=商品统计数据
     */
    @NotNull(message = "类型不允许为空")
    @Range(min = 0, max = 8, message = "类型参数不在允许范围内")
    private Integer type;

    /**
     * 文件名前缀
     */
    @NotBlank(message = "文件名前缀不允许为空")
    @ParamName("file_prefix")
    private String filePrefix;

    /**
     * 查询条件，json串格式
     * 示例：{"keyword": "", "start_time": "yyyy-MM-dd", "end_time": "yyyy-MM-dd"}
     * 常用：keyword, start_time, end_time
     */
    @ParamName("search_condition")
    private String searchCondition;

}
